package com.econ.powercloud.ems.pojo.requestVO;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @Author : zjf
 * @Description :
 * @Date : 2022/10/18 14:47
 * @Modified by : zjf
 */
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class EmsPriceModelDetailRequestVO {

    @NotNull
    @ApiModelProperty(value = "模型id")
    private Integer modelId;

    @NotBlank
    @ApiModelProperty(value = "适用时间")
    private String applyTime;

    @NotNull
    @ApiModelProperty(value = "电价类型")
    private Integer priceType;

    @NotNull
    @ApiModelProperty(value = "电压等级")
    private Integer voltageLevel;

    @ApiModelProperty(value = "基本电费")
    private Integer basicElectricity;

    @ApiModelProperty(value = "基本电价")
    private Double basicPrice;

    @ApiModelProperty(value = "尖电价")
    private Double spikePrice;

    @NotNull
    @ApiModelProperty(value = "峰电价")
    private Double peakPrice;

    @NotNull
    @ApiModelProperty(value = "平电价")
    private Double flatPrice;

    @NotNull
    @ApiModelProperty(value = "谷电价")
    private Double valleyPrice;

    @NotNull
    @ApiModelProperty(value = "计费模型")
    private Integer calculationType;

    @ApiModelProperty(value = "特殊情况")
    private Integer specialCase;

    @ApiModelProperty(value = "对比条件")
    private Integer compareCond;

    @ApiModelProperty(value = "值")
    private String value;

    @ApiModelProperty(value = "特殊情况下的尖电价")
    private Double specialSpikePrice;

    @ApiModelProperty(value = "特殊情况下的峰电价")
    private Double specialPeakPrice;

    @ApiModelProperty(value = "特殊情况下的平电价")
    private Double specialFlatPrice;

    @ApiModelProperty(value = "特殊情况下的谷电价")
    private Double specialValleyPrice;

    @ApiModelProperty(value = "特殊情况下的尖峰平谷电价计算模型")
    private Integer specialCalculationType;

}
